package com.logic.landseaserver.persistence.read;

import java.util.List;

import com.logic.landseaserver.domain.DdingAddRoom;
import com.logic.landseaserver.domain.DdingRoomSync;

public interface DdingRoomSyncReadMapper
{
    DdingRoomSync selectByPrimaryKey(Integer roomId);
    
    /**
     * 
     * [简要描述]：根据项目id查询其未同步的房间</br>
     * [详细描述]：过滤掉已删除的房间</br>
     * [作者]：Aaron(2017-06-29)</br>
     *
     * @param projectId 项目id
     * @return 未同步房间列表
     *
     */
    List<DdingAddRoom> selectNeedSyncRoomByProjectId(Integer projectId);
    
    /**
     * 
     * [简要描述]：根据项目id查询其已同步的房间</br>
     * [详细描述]：</br>
     * [作者]：Aaron(2017-06-30)</br>
     *
     * @param projectId 项目id
     * @return
     *
     */
    Integer selectSyncRoomCountByProjectId(Integer projectId);
    
    /**
     * 
     * [简要描述]：根据项目id查询已安装锁的房间</br>
     * [详细描述]：</br>
     * [作者]：Aaron(2017-06-30)</br>
     *
     * @param projectId 项目id
     * @return
     *
     */
    Integer selectInstallLockRoomCountByProjectId(Integer projectId);
    
    /**
     * 根据锁的设备id查询房间
     * 
     * @param uuid 设备锁uuid
     * @return
     */
    List<DdingRoomSync> selectByLockUuid(String uuid);
}